Malleable Software
The original promise of personal computing was a new kind of clay—a malleable material that users could reshape at will. Instead, we got appliances: built far away, sealed, unchangeable. When your tools don’t work the way you need them to, you submit feedback and hope for the best.
こう見ると、Digital Gardenは、Malleableになった/なっていないソフトウェアを使って、ユーザーはいかに日々の暮らしを変容できるかという問いを扱うわけだな。 自分の日常を変えられるという発想を妨げているのは何か。
In the physical world, the act of crafting our environments comes naturally, because physical reality is malleable.
このあと出てくるのかもしれないけど、physical realityとソフトウェアの違いは、それ自体がどんどん変化して更新されるということ。やっぱりガーデンのメタファのが近い。変化を受け入れる。
Before, new ideas took minutes to try; now they could take hours of wrangling configurations, if they were possible at all. Computerizing work led to a loss of agency.
この場合ツールとは何なのか。誤用を許容するのか?目的とは?
Malleabilityがない事例
PMがプロセスを自分で決められない
医療関係者がフォームの無駄な項目をスキップできない
そのため行為主体感を失い、バーンアウトしてしまった
オルタナティブ
設定
プラグイン
MOD
無許可で行うもののことをMODというらしい
オープンソース
AI assisted coding
根本からやることの重要性
Bringing AI coding tools into today’s software ecosystem is like bringing a talented sous chef to a food court. If you’re used to purchasing meals from a menu, a skilled chef can’t do much to help you. Similarly, if you’re using closed-source software from an app store, an AI coding assistant can’t do very much to help you as a user. To fully take advantage of the capabilities of AI, we need to move past the food court to something more like a kitchen—a site of open-ended creation.
スプレッドシートは徐々にコントロール度を上げていける環境
https://gyazo.com/ff7681983486a97c0f666f5f42dac1c5
How might we reorient software around more general, composable tools—that feels more like a knife and less like an avocado slicer?
なるほどそういうゴールなのか
Compound document systems:1つのドキュメントが複数種類のデータから構成されていて、その特定部分を編集するための特定エディタが立ち上がるような仕組みのこと。OpenDocなど。 https://gyazo.com/3efc291a9e1c1ed7130f339399cebba9
Communal development
一人で作るには大変すぎるツールもみんなでなら作れる。
Building software for “local” contexts is sometimes *easier* than building software for world-wide use. You don’t need to build airtight, industrial-grade software if you are in direct contact with your users and can be responsive to the situations they run into. You don’t need to anticipate everyone’s needs in your design, just your community’s. Clay Shirky termed this pattern “situated software”, describing how his students were able to rapidly build software for their communities by “taking advantage of social infrastructure or context-sensitive information”.
As we move towards a world with gentler slopes into software modification, and more tools rather than apps, we’ll need to figure out how smaller pieces of code can be shared and collaboratively developed, and how interoperability can be maintained in a world of pluralistic software.
これすごい。自分たちが作ったバージョン管理システム + JSON diff統合システムを使ってMarkdownエディタを作っていて、それに随時機能を拡張しながらこの記事を書いてるらしい。
https://gyazo.com/f4836e6cab5eb4a0d0975f146b6a61d4
https://gyazo.com/89730d1a61d2d4c68bcae5d0d59124a0
しかもその拡張機能をP2P(?)のリンクで共有できるらしい。
https://gyazo.com/bea45b7b0a42f451a19ba38454473136
We argued earlier that AI-assisted coding alone does not guarantee malleability. But when combined with a malleable environment, AI-assisted development can make it much faster to edit your tools.
Challenges
Privacy and security: How do we reconcile the desire for extensible software and interoperability with the reality of bad actors? When untrusted strangers are sharing modifications to existing software that can access sensitive data, dangerous things can happen.
Business models: How would developers make money from their software if they were shipping composable tools, not monolithic applications? How is support and maintenance paid for?
Culture: How do we cultivate a movement towards personal agency where people want to modify their environments, both digital and otherwise?